ESP32模拟SPI控制0.9存OLED |
您所在的位置:网站首页 › esp32s3 spi › ESP32模拟SPI控制0.9存OLED |
没有C币的同学请私信我。 本例程参考正点原子在STM32模拟SPI控制0.9寸OLED,主要更改如下 #define PIN_NUM_MISO 25 // 数据 d1 #define PIN_NUM_CLK 19 // 时钟 d0 #define PIN_NUM_CS 22 #define PIN_NUM_DC 21 #define PIN_NUM_RST 18 #define OLED_CS(X) X?gpio_set_level(PIN_NUM_CS, 1):gpio_set_level(PIN_NUM_CS, 0) #define OLED_RST(X) X?gpio_set_level(PIN_NUM_RST, 1):gpio_set_level(PIN_NUM_RST, 0) #define OLED_DC(X) X?gpio_set_level(PIN_NUM_DC, 1):gpio_set_level(PIN_NUM_DC, 0) #define OLED_D0(X) X?gpio_set_level(PIN_NUM_CLK, 1):gpio_set_level(PIN_NUM_CLK, 0) #define OLED_D1(X) X?gpio_set_level(PIN_NUM_MISO, 1):gpio_set_level(PIN_NUM_MISO, 0) void OLED_GPIO_Init(void) { // GPIO_Init(OLED_PORT_NORMAL, &GPIO_InitStruct); gpio_set_direction(PIN_NUM_MISO, GPIO_MODE_OUTPUT); gpio_set_direction(PIN_NUM_CLK, GPIO_MODE_OUTPUT); gpio_set_direction(PIN_NUM_CS, GPIO_MODE_OUTPUT); gpio_set_direction(PIN_NUM_DC, GPIO_MODE_OUTPUT); gpio_set_direction(PIN_NUM_RST, GPIO_MODE_OUTPUT); }主要就是改了GPIO初始化程序,其他的基本没有动,不过有一个问题必须强调一下,ESP32的gpio是有限制的,不是所有io口都可以做输出。 (PIN_NUM_MISO)(PIN_NUM_CLK); (PIN_NUM_CS); (PIN_NUM_DC); (PIN_NUM_RST); 这五个是宏定义的io口编号。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |